package cc.autoapi.pucong.auto.flow.core.flow.execNode.ai.send;


import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import cc.autoapi.pucong.auto.flow.core.flow.execNode.streamBus.IStreamSubscriber;

/**
 * @description:
 * @author: cong.pu
 * @create: 2024-10-14 08:55
 **/
public interface AiSendToolInterface {
    /**
     * 获取token
     *
     * @return
     */
    void initToken();

    void initSystem(String content);

    String getSystem();

    void initTools(JSONArray tools);

    JSONArray getTools();

    /**
     * 发送消息
     *
     * @return
     */
    String sendToAi(String question);

    JSONObject sendToolsToAi(JSONArray msgArrays);

    /**
     * 发送流式消息
     *
     * @return
     */
    IStreamSubscriber sendToAiStream(String question);

}
